package d13_tz.d1_thread_priority;

public class ThreadPriority {
    public static void main(String[] args) {

        //1.创建一个任务
        MyRunnable mr = new MyRunnable();
        /**
         * 关键结论：
         * 是同一个任务（mr 被两个线程共享），但 执行时各自独立运行 run() 方法。
         * 因为 i 是 run() 方法内部的局部变量，每个线程调用 run() 时都会在自己的栈内存中创建一个独立的 i，从 0 循环到 100。
         * 输出结果会是 小花朵 和 小大多 交替打印（顺序随机），各自打印 0~100 的数字。
         *
         * 不是“两个人共同加到 100”：
         * 如果 i 是 MyRunnable 的成员变量（共享变量），才会出现两个线程共同操作一个 i 的情况（此时需要线程安全控制）。
         * 但当前代码中 i 是局部变量，不存在共享。
         */

        //2、创建两个线程
        Thread t1 = new Thread(mr, "小花朵");//-------------->如果需要同时操作一件事,需要共享状态,变量
        Thread t2 = new Thread(mr, "小大多");

        System.out.println(t1.getPriority());
        System.out.println(t2.getPriority());

        t1.setPriority(10);

        t1.start();
        t2.start();

    }
}
